The present inventive concept herein relates to semiconductor memory devices, and more particularly, to methods of programming a nonvolatile semiconductor memory device.
Semiconductor memory devices may be classified as either volatile memory devices or nonvolatile memory devices. Volatile memory devices are generally characterized by the loss of stored data when a power supply is interrupted. Examples of volatile memory devices include dynamic random access memory (DRAM) devices and static random access memory (SRAM) devices. Nonvolatile memory devices are generally characterized by the retention of stored data even when a power supply is interrupted. Examples of nonvolatile memory devices include programmable read only memory (PROM) devices, erasable PROM (EPROM) devices, electrically EPROM (EEPROM) devices, flash memory devices, ferroelectric random access memory (FRAM) devices, magnetic random access memory (MRAM) devices, phase change random access memory (PRAM) devices, and resistive random access memory (RRAM) devices.
Among nonvolatile memory devices, flash memory exhibits advantages of high programming speed, low power consumption and high capacity data storage. Thus, data storage devices including flash memory has been widely utilized.
A floating gate type flash memory stores bit information by implanting charges into a floating gate formed of polysilicon. Separately, each memory cell of flash memory can store data as a single level cell (SLC) in which 1 bit (states 1, 0) is recorded in one memory cell, and a multi level cell (MLC) in which at least 2 bits (e.g., states 11, 01, 00, 10) are recorded in one memory cell.
In a program operation of a flash memory, to increase boosting efficiency, a technology of increasing a voltage level of a common source line to a specific level may be applied. However, to achieve this, since a voltage level of the common source line has to be charged and discharged to the same level at every program loop, power consumption may increase.